global.screen.connect('monitors-changed',
Lang.bind(this, this._monitorsChanged));
this._monitorsChanged();
- this._prepareStartupAnimation();
},
// This is called by Main after everything else is constructed;
// MetaBackgroundActor inside global.window_group covers the entirety of the
// screen. So, we set no_clear_hint at the end of the animation.
- _prepareStartupAnimation: function() {
+ prepareStartupAnimation: function() {
// Set ourselves to FULLSCREEN input mode while the animation is running
// so events don't get delivered to X11 windows (which are distorted by the animation)
global.stage_input_mode = Shell.StageInputMode.FULLSCREEN;
if (Main.sessionMode.isGreeter) {
this.panelBox.translation_y = -this.panelBox.height;
} else {
+ // We need to force an update of the regions now before we scale
+ // the UI group to get the coorect allocation for the struts.
+ this._updateRegions();
+
this.trayBox.hide();
this.keyboardBox.hide();
this._createSecondaryBackgrounds();
this.emit('panel-box-changed');
+
+ this._queueUpdateRegions();
},
showKeyboard: function () {
if (Main.sessionMode.isGreeter)
return;
+ if (this._startingUp)
+ return;
+
if (!this._updateRegionIdle)
this._updateRegionIdle = Mainloop.idle_add(Lang.bind(this, this._updateRegions),
Meta.PRIORITY_BEFORE_REDRAW);